log(error.message);
});
+ this._proxy.connectSignal('ActivationToken',
+ (proxy, sender, params) => {
+ const [id] = params;
+ this._emitSignal(
+ this._activeNotifications.get(id),
+ 'ActivationToken',
+ new GLib.Variant('(us)', params));
+ });
this._proxy.connectSignal('ActionInvoked',
(proxy, sender, params) => {
const [id] = params;
hasDefaultAction = true;
} else {
notification.addAction(label, () => {
+ this._emitActivationToken(source, ndata.id);
this._emitActionInvoked(ndata.id, actionId);
});
}
if (hasDefaultAction) {
notification.connect('activated', () => {
+ this._emitActivationToken(source, ndata.id);
this._emitActionInvoked(ndata.id, 'default');
});
} else {
this._dbusImpl.emit_signal('ActionInvoked',
GLib.Variant.new('(us)', [id, action]));
}
+
+ _emitActivationToken(source, id) {
+ const context = global.create_app_launch_context(0, -1);
+ const info = source.app?.get_app_info();
+ if (info) {
+ const token = context.get_startup_notify_id(info, []);
+ this._dbusImpl.emit_signal('ActivationToken',
+ GLib.Variant.new('(us)', [id, token]));
+ }
+ }
}
export const FdoNotificationDaemonSource = GObject.registerClass(